#include <iostream>
#include <signal.h>
#include <unistd.h>

// 自动捕捉信号。
void PrintSign(int id)
{
    std::cout << "Kill Sign Is" << id << std::endl;
    // exit(1);
}

int main()
{
    // 更改信号
    for(int i = 1;i < 32;++i)
    {
        signal(i,PrintSign);
    }
    // 只有kill -9 才能杀掉该进程。
    // 如果所有信号都无法对一个进程起作用，资源就会被占用。
    // 操作系统规定kill -9 选项，无法被自定义捕捉。

    int i = 0;

    while(true)
    {
        std::cout << "正在运行" << "[" <<  i << "]" << "Pid:" << getpid() << std::endl;
        sleep(1);
        ++i;
    }

    return 0;
}